System for editing query conditions, calculations, formulas and equations

ABSTRACT

Editing query conditions, calculations, formulas and equations, or any other parts of a form includes providing a hyperlink for an element in the form to indicate to a user that a control is available for the element. Upon a selection of the hyperlink by the user, the control is presented for user interaction. Upon completion of user interaction with the control, the element is replaced with a new element responsive to user action. The control can be a list of choices, such as a pull-down menu, a dialog box, or a text entry field. The hyperlink can be color coded and underlined.

BACKGROUND

[0001] On computer systems, specifying a query condition or calculation frequently requires selecting from a list of valid options to fill specific roles in a query condition or calculation. For example, conditions frequently take the form of <Variable><Operator><Variable/Value>, for example, “Sales >Costs.”

[0002] User interfaces frequently present such an equation using a series of drop-down list boxes or other controls to select from the valid list of choices to fill each of the positions in the equation. Alternatively, applications often allow users to edit equations by simply entering the information in a text entry box, which can be both difficult, since the user is not given any guidance, and very error prone.

SUMMARY

[0003] In an embodiment of the present invention, keywords in query conditions and calculations, or other parts of a form, can be represented as hyperlinks by means of color coding and formatting. For example, text might be blue and underlined to match user expectations resulting from web browsing experience. Clicking on the hyperlink can display an appropriate control, in context, for editing the value of the clicked term. The control might be, for example, a list of valid choices or an text entry box for entering text. The original term can then be replaced by the selected choice or entered value.

[0004] One advantage of the new solutions is that equations can be presented in a familiar, easily readable form, and edited in place. It is not necessary to present a series of controls that require substantially more screen real estate, and that often make it harder to read the equation.

[0005] Usability tests have shown that while users do not initially understand what the links are for, once they do understand how to use the links, users find using the links to be a very easy and natural way to edit equations. Compared to simply editing the text of an equation, these solutions provide much more guidance because the format of the equation can be provided. In addition, there is less room for error, because modifications can be restricted to valid alternatives.

[0006] The solution is an elegant combination of a well known interface convention, i.e, clicking on hyperlinks, to perform a new task, i.e., editing equations or other parts of a form. It allows an equation to be presented in a simple, readable format, while maintaining its editability.

[0007] Accordingly, a method for editing query conditions, calculations, formulas and equations, or any other parts of a form includes providing a hyperlink for an element in the form to indicate to a user that a control is available for the element. Upon a selection of the hyperlink by the user, the control is presented for user interaction.

[0008] In one embodiment, upon completion of user interaction with the control, the element is replaced with a new element responsive to user action.

[0009] The form can be, but is not limited to, a database query or a spreadsheet.

[0010] The element can be, for example, part of a calculation.

[0011] The control can be, but is not limited to, a list of choices, such as a pull-down menu, a dialog box, or a text entry field.

[0012] Finally, in one embodiment, the hyperlink is color coded and underlined.

BRIEF DESCRIPTION OF THE DRAWINGS

[0013] The foregoing and other objects, features and advantages of the invention will be apparent from the following more particular description of particular embodiments of the invention, as illustrated in the accompanying drawings in which like reference characters refer to the same parts throughout the different views.

[0014]FIG. 1 is a block diagram of a typical computer system which has been simplified for the sake of discussion.

[0015]FIG. 2 is a screen shot which illustrates the present invention.

[0016]FIG. 3 illustrates the screen of FIG. 2 after the user has clicked on the “Top” link.

[0017]FIG. 4 illustrates the screen of FIG. 2 after the user selects the “10” link.

[0018]FIG. 5 illustrates the screen of FIG. 2 after the user has selected “Bottom” and entered “5”.

DETAILED DESCRIPTION

[0019]FIG. 1 is a block diagram of a typical computer system 8, which has been simplified for the sake of discussion. A processor 10 is typically connected to volatile memory 12 which maybe external or internal to the CPU 10. The CPU 10 is also typically connected to one or more storage media 14 such as hard disks, floppy disks, CD-ROMs and tape drives. Often a database is stored on the mass storage 14.

[0020] The CPU 10 is typically also connected to user input devices such as a mouse 16 and a keyboard 18. These allow a user to input information and enter request such as database queries to the computer 10.

[0021] Output devices can include, for example, a printer 20 and a monitor 22.

[0022] Finally, a CPU 10 may be connected to other computers over a network 24 such as a local area network (LAN) or the internet.

[0023]FIG. 2 is a screen shot which illustrates the present invention. The screen shot 30 includes an instruction area 32 which indicates to a user that the user should choose a condition similar to the condition that the user desires. The user is also instructed to modify the selected condition by clicking the blue underlined text.

[0024] Below the instruction 32, is a tree structure 33. A highlighted line illustrates a condition which the user has selected. There are three “links” in this condition: the descriptor “Top” 34, the value “10” 36 and the variable “Direct Cost”38.

[0025]FIG. 3 illustrates the screen shot 30 after the user has clicked on the “Top” link 34. In this particular example, a pull-down menu 40 appears, providing a list of valid choices to the user. These choices include “Top,” “Bottom” and “Top or bottom.” After selecting one of these choices, the selected choice will replace the existing link. For example, if the user selects “Bottom,” the menu 40 will disappear and the highlighted line will now read “Bottom 10 based on Direct Cost.” The “Top” link 40 is replaced by a “Bottom” link (not shown), which would typically, but not necessarily, bring up the same menu 40.

[0026]FIG. 4 similarly illustrates a screen shot 30 when the user selects the second link “10”36. In this particular example, a text entry box 42 appears. This allows the user to enter any numeric value. Note that only numbers can be entered in this particular case, thus lowering the possibility of an error that could occur in free-form text entry.

[0027]FIG. 5 illustrates the screen of FIG. 2 after the user has selected “Bottom” in the pulldown menu 40 of FIG. 3 and entered “5” in the text entry box 42 of FIG. 4. Note how the contents of the affected hyperlinks 34, 36 has changed according to the user's selections.

[0028] In similar fashion, when the user clicks on the “Direct Cost” link 38, a pull down menu of valid variables (not shown) appears.

[0029] Of course, these controls are exemplary. Other controls are equally possible. For example, a dialog for setting up some configuration might appear in response to selection of a link. The link is used to indicate to the user that a control is available.

[0030] The links of the present invention may appear, for example, in a form, or a form letter. They can be used to edit a query into a database, stored for example, on mass storage 14, or to edit a spreadsheet or some calculation. In a particular embodiment, the text of the link is color coded and underlined. Alternatively, the text may be highlighted in some other manner.

[0031] As another example of the applicability of the present method, in composing a web page or other hypertext document using HTML or some other paging language, for a given tag, all valid parameters that can be used with the tag can be listed in a hyperlinked control. Furthermore, a form letter could have hyperlinked pull-down menus for a title where “Mr.,” “Mrs.,” “Ms.,” “Miss” and “Dr.” are options, as well as for the closing where options can be, for example, “Sincerely,” “Very truly yours,” etc.

[0032] It will be apparent to those of ordinary skill in the art that methods involved in the present system for editing query conditions, formulas and equations may be embodied in a computer program product that includes a computer usable medium. For example, such a computer usable medium can include a readable memory device, such as a hard drive device, a CD-ROM, a DVD-ROM, or a computer diskette, having computer readable program code segments stored thereon. The computer readable medium can also include a communications or transmission medium, such as a bus or a communications link, either optical, wired, or wireless, having program code segments carried thereon as digital or analog data signals.

[0033] While this invention has been particularly shown and described with references to particular embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the scope of the invention encompassed by the appended claims. 

What is claimed is:
 1. A computer method for editing a form, comprising: displaying a hyperlink for an element in the form, to indicate to a user that a control is available for the element; upon a selection of the hyperlink by the user, presenting the control for user interaction; and upon completion of user interaction with the control, replacing the element with a new element responsive to user action.
 2. The method of claim 1, wherein the form is a database query.
 3. The method of claim 1, wherein the form is a spreadsheet.
 4. The method of claim 1, wherein the element is part of a calculation.
 5. The method of claim 1, wherein the element is part of a formula.
 6. The method of claim 1, wherein the control is a list of choices.
 7. The method of claim 6, wherein the list of choices is a pull-down menu.
 8. The method of claim 1, wherein the control is a dialog box.
 9. The method of claim 1, wherein the control is a text entry field.
 10. The method of claim 1, further comprising: upon completion of user interaction with the control, replacing the element with a new element responsive to user action, wherein the control is selected from a group of controls consisting of a list, a dialog box and a text entry field.
 11. A computer system for editing a form, comprising: a user interface for displaying information to a user and for accepting input from the user; a hyperlink displayed on the user interface for an element in the form, to indicate to the user that a control is available for the element; upon a selection of the hyperlink by the user, the control displayed on the user interface for user interaction; and upon completion of user interaction with the control, a new element responsive to user action replacing the element.
 12. The computer system of claim 11, wherein the control is selected from a group of controls consisting of a list, a dialog box and a text entry field.
 13. A computer program product for editing a form, the computer program product comprising a computer usable medium having computer readable code thereon, including program code which: displays a hyperlink for an element in the form, to indicate to a user that a control is available for the element; upon a selection of the hyperlink by the user, presents the control for user interaction; and upon completion of user interaction with the control, replaces the element with a new element responsive to user action.
 14. A computer data signal embodied in a carrier wave for editing a form, comprising: a program code segment for displaying a hyperlink for an element in the form, to indicate to a user that a control is available for the element; a program code segment for presenting, upon a selection of the hyperlink by the user, the control for user interaction; and a program code segment for replacing, upon completion of user interaction with the control, the element with a new element responsive to user action. 